﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BibliotecaProjeto.usuario;
using BibliotecaProjeto.funcionario;
using BibliotecaProjeto.administrador;
using BibliotecaProjeto.atendente;
using BibliotecaProjeto.aluguel;
using BibliotecaProjeto.bicicleta;
using BibliotecaProjeto.estacao;
using BibliotecaProjeto.endereco;
using BibliotecaProjeto.passe;
using BibliotecaProjeto.tipoPasse;
//using BibliotecaProjeto.interfaces;

namespace BibliotecaProjeto.fachada
{
    public class Fachada
    //: InterfaceUsuario, InterfaceAdministrador, InterfaceAluguel, InterfaceAtendente, InterfaceBicicleta, InterfaceEndereco, InterfaceEstacao, InterfaceFuncionario, InterfacePasse, InterfaceTipoPasse
    {
        NegocioUsuario negocioUsuario = new NegocioUsuario();
        NegocioFuncionario negocioFuncionario = new NegocioFuncionario();
        NegocioAdministrador negocioAdministrador = new NegocioAdministrador();
        NegocioAluguel negocioAluguel = new NegocioAluguel();
        NegocioAtendente negocioAtendente = new NegocioAtendente();
        NegocioBicicleta negocioBicicleta = new NegocioBicicleta();
        NegocioEndereco negocioEndereco = new NegocioEndereco();
        NegocioEstacao negocioEstacao = new NegocioEstacao();
        NegocioPasse negocioPasse = new NegocioPasse();
        NegocioTipoPasse negocioTipoPasse = new NegocioTipoPasse();

        public void cadastrar(Usuario usuario)
        {
            negocioUsuario.cadastrar(usuario);
        }

        public void atualizar(Usuario usuario)
        {
            negocioUsuario.atualizar(usuario);
        }

        public void remover(Usuario usuario)
        {
            negocioUsuario.remover(usuario);
        }

        public void cadastrar(Funcionario funcionario)
        {
            negocioFuncionario.cadastrar(funcionario);
        }

        public void atualizar(Funcionario funcionario)
        {
            negocioFuncionario.atualizar(funcionario);
        }

        public void remover(Funcionario funcionario)
        {
            negocioFuncionario.remover(funcionario);
        }

        public void cadastrar(Administrador administrador)
        {
            negocioAdministrador.cadastrar(administrador);
        }

        public void atualizar(Administrador administrador)
        {
            negocioAdministrador.atualizar(administrador);
        }

        public void remover(Administrador administrador)
        {
            negocioAdministrador.remover(administrador);
        }

        public void inserir(Aluguel aluguel)
        {
            negocioAluguel.inserir(aluguel);
        }

        public void remover(Aluguel aluguel)
        {
            negocioAluguel.remover(aluguel);
        }

        public void cadastrar(Atendente atendente)
        {
            negocioAtendente.cadastrar(atendente);
        }

        public void atualizar(Atendente atendente)
        {
            negocioAtendente.atualizar(atendente);
        }

        public void remover(Atendente atendente)
        {
            negocioAtendente.remover(atendente);
        }

        public void cadastrar(Bicicleta bicicleta)
        {
            negocioBicicleta.cadastrar(bicicleta);
        }

        public void atualizar(Bicicleta bicicleta)
        {
            negocioBicicleta.atualizar(bicicleta);
        }

        public void remover(Bicicleta bicicleta)
        {
            negocioBicicleta.remover(bicicleta);
        }

        public void cadastrar(Endereco endereco)
        {
            negocioEndereco.cadastrar(endereco);
        }

        public void atualizar(Endereco endereco)
        {
            negocioEndereco.atualizar(endereco);
        }

        public void remover(Endereco endereco)
        {
            negocioEndereco.remover(endereco);
        }

        public void cadastrar(Estacao estacao)
        {
            negocioEstacao.cadastrar(estacao);
        }

        public void atualizar(Estacao estacao)
        {
            negocioEstacao.atualizar(estacao);
        }

        public void remover(Estacao estacao)
        {
            negocioEstacao.remover(estacao);
        }

        public void cadastrar(Passe passe)
        {
            negocioPasse.cadastrar(passe);
        }

        public void remover(Passe passe)
        {
            negocioPasse.remover(passe);
        }

        public void cadastrar(TipoPasse tipoPasse)
        {
            negocioTipoPasse.cadastrar(tipoPasse);
        }

        public void atualizar(TipoPasse tipoPasse)
        {
            negocioTipoPasse.atualizar(tipoPasse);
        }

        public void remover(TipoPasse tipoPasse)
        {
            negocioTipoPasse.remover(tipoPasse);
        }
    }
}
